Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра захисту інформації

Інформація про роботу

Рік:
2024
Тип роботи:
Розрахункова робота
Предмет:
Мікропроцесори

Частина тексту файла

Міністерство освіти і науки Україниіі Національний університет „Львівська політехніка” Кафедра «Захисту інформації» Розрахункова робота З курсу: «Мікропроцесорні пристрої» Львів-2010 Завдання: Написати та відлагодити програму для схеми, яка б здійснювала дискретизацію вхідного сигналу з діапазоном Uвх=0-5 В з частотою FS Гц аналого-цифровим перетворювачем МАХ1241 (опорна напруга UREF=5 В) та відображала знаення напруги на рідкокристалічному дисплеї LM020L з контролером HD44780 та передавала її значення через послідовний порт в ПК зі швидкістю передачі R Бод. Тактова частота FT МА АТ90S2313 становить 7.3728 МГц. Якщо напруга виходить за межі 2.5 В ± 0.чч В (хх – дві останні цифри номера залікової книжки, якщо хх=00 то прийняти хх=99) на дисплей виводиться повідомлення Alarm. № варіанту Частота дискретизації FS, Гц Швидкість передачі по УАПП R, Бод  29 2.0 2400   Номер в списку – 2 Номер залікової книжки – 0609163 Код програми мовою С: #include <stdio.h> #include <stdlib.h> #include <string.h> #define LCD_Rom 16 typedef unsigned char byte; #define LCD_Row 16 #define LCD_CLEAR 0x01 #define LCD_RETURN 0x02 #define LCD_AUTO 0x04 #define LCD_CURSOR_AUTOINC 0x02 #define LCD_CURSOR_AUTODEC 0x00 #define LCD_DISPL_AUTOSHIFT 0x01 #define LCD_DISPL_NOAUTOSHIFT 0x00 #define LCD_DISPLAY 0x08 #define LCD_DISPLAY_ON 0x04 #define LCD_DISPLAY_OFF 0x00 #define LCD_CURSOR_ON 0x02 #define LCD_CURSOR_OFF 0x00 #define LCD_CURSOR_BLICK 0x01 #define LCD_CURSOR_NOBLICK 0x00 #define LCD_SHIFT 0x10 #define LCD_SHIFT_CURSOR 0x00 #define LCD_SHIFT_DISPLAY 0x08 #define LCD_SHIFT_LEFT 0x00 #define LCD_SHIFT_RIGHT 0x04 #define LCD_MODE 0x20 #define LCD_MODE_4BIT 0x00 #define LCD_MODE_8BIT 0x10 #define LCD_MODE_1ROW 0x00 #define LCD_MODE_2ROW 0x08 #define LCD_MODE_7FONT 0x00 #define LCD_MODE_10FONT 0x04 #define LCD_SET_CGRAM 0x40 #define LCD_SET_DDRAM 0x80 #define PORT_LCD_DATA PORTB #define DDR_LCD_DATA DDRB #define PIN_LCD_DATA PINB #define LCD_D7 7 #define LCD_D6 6 #define LCD_D5 5 #define LCD_D4 4 #define BF LCD_D7 #define PORT_LCD_CTRL PORTD #define DDR_LCD_CTRL DDRD #define PIN_LCD_CTRL PIND #define LCD_WR 4 #define LCD_E 5 #define LCD_RS 6 #define CTRL 0 #define DATA 1 #define WRITE 0 #define READ 1 byte LCD_READ(byte ctrl); void LCD_WRITE(byte ctrl, byte val); void LCD_WRCMD(byte cmd); void LCD_WRDAT(byte arg); void LCD_Init(void); #define SE 5 void ADC_Convert(void); int ADC_Result; interrupt[5] Timer_Comp(void) { ADC_Convert(); } byte LCD_READ(byte ctrl); void LCD_WRITE(byte ctrl, byte val); void LCD_WRCMD(byte cmd); void LCD_WRDAT(byte arg); void LCD_Init(void); #include "90S2313.h" #include "delay.h" /* quartz crystal frequency [Hz] */ #define xtal 1000000L /* Baud rate */ #define baud 9600 void main(void) { int T_100000, T_10000, T_1000, T_100; long int tt; char data[2]; int i=0,time=5; unsigned char buffer[6]; LCD_Init(); DDRB.0=1; PORTB.0=1; DDRB.1=0; DDRB.2=1; PORTB.2=0; //OCR1=3999; OCR1=35999 TCCR1B=0x0D; TIMSK=0b01000000; MCUCR=(1<<SE); UCR=0x18; // UBRR=95; /* initialize the UART's baud rate */ UBRR=xtal/16/baud-1; #asm sei #endasm while (1) { #asm sleep #endasm tt=ADC_Result*(long int)12207; T_100000=tt/10000000; tt=tt-T_100000*10000000; T_10000=tt/1000000; tt=tt-T_10000*1000000; T_1000=tt/100000; tt=tt-T_1000*100000; T_100=(tt/10000) + 1; tt=0; if...
Антиботан аватар за замовчуванням

08.09.2012 17:09

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини